#include <vector>

using namespace std;

class AbstractCell{

	public:
		
	virtual bool isAlive()=0;
	virtual bool evolve(vector<vector<vector<int> > >& neighbors, int x, int y)=0;
	virtual void updateNeighborCount(vector<vector<vector<int> > >& neighbors, int x, int y)=0;
	virtual void print()=0;
	virtual void setCell(char t)=0;
	virtual int getType()=0;
	virtual ~AbstractCell (){}
	virtual int getAge()=0;
};
